這邊會做一個簡易版的實作
今天要學的核心概念
加密:把原始資料變成看不懂的密文。
解密:用正確的鑰匙把密文還原。
雜湊:幫資料生成指紋,確認是否被竄改。
動手試試
首先建立測試檔echo "My password is 12345" > secret.txt cat secret.txt
再來是用base64模擬加密/解密
加密:base64 secret.txt > encrypted.txt cat encrypted.txt
會看到結果是亂碼:TXkgcGFzc3dvcmQgaXMgMTIzNDUK
解密:base64 --decode encrypted.txt > decrypted.txt cat decrypted.txt
會看到這樣的結果:My password is 12345
這就像最基礎的可逆加密,雖然不安全,但能清楚理解資料到密文再到還原的流程。
接著是用shasum建立雜湊指紋
輸入:shasum -a 256 secret.txt
會看到這樣的結果:5994471abb01112afcc18159f6cc74b4f511b99806da59b3caf5a9c173cacfc5 secret.txt
如果改一下內容再執行一次,雜湊值會完全不同,即使只改了一個字,這說明雜湊能偵測資料是否被修改過。